package com.pm.business.mapper;

import java.util.List;
import com.pm.business.domain.CompeteEnterpriseHistoryProject;
import com.pm.business.domain.CompeteEnterpriseProjectAward;

/**
 * 历史业绩Mapper接口
 * 
 * @author zxl
 * @date 2022-05-07
 */
public interface CompeteEnterpriseHistoryProjectMapper 
{
    /**
     * 查询历史业绩
     * 
     * @param projectId 历史业绩主键
     * @return 历史业绩
     */
    public CompeteEnterpriseHistoryProject selectCompeteEnterpriseHistoryProjectByProjectId(Long projectId);

    /**
     * 查询历史业绩列表
     * 
     * @param competeEnterpriseHistoryProject 历史业绩
     * @return 历史业绩集合
     */
    public List<CompeteEnterpriseHistoryProject> selectCompeteEnterpriseHistoryProjectList(CompeteEnterpriseHistoryProject competeEnterpriseHistoryProject);

    /**
     * 新增历史业绩
     * 
     * @param competeEnterpriseHistoryProject 历史业绩
     * @return 结果
     */
    public int insertCompeteEnterpriseHistoryProject(CompeteEnterpriseHistoryProject competeEnterpriseHistoryProject);

    /**
     * 修改历史业绩
     * 
     * @param competeEnterpriseHistoryProject 历史业绩
     * @return 结果
     */
    public int updateCompeteEnterpriseHistoryProject(CompeteEnterpriseHistoryProject competeEnterpriseHistoryProject);

    /**
     * 删除历史业绩
     * 
     * @param projectId 历史业绩主键
     * @return 结果
     */
    public int deleteCompeteEnterpriseHistoryProjectByProjectId(Long projectId);

    /**
     * 批量删除历史业绩
     * 
     * @param projectIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteCompeteEnterpriseHistoryProjectByProjectIds(Long[] projectIds);

    /**
     * 批量删除竞争单位历史项目获奖
     * 
     * @param projectIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteCompeteEnterpriseProjectAwardByProjectIds(Long[] projectIds);
    
    /**
     * 批量新增竞争单位历史项目获奖
     * 
     * @param competeEnterpriseProjectAwardList 竞争单位历史项目获奖列表
     * @return 结果
     */
    public int batchCompeteEnterpriseProjectAward(List<CompeteEnterpriseProjectAward> competeEnterpriseProjectAwardList);
    

    /**
     * 通过历史业绩主键删除竞争单位历史项目获奖信息
     * 
     * @param projectId 历史业绩ID
     * @return 结果
     */
    public int deleteCompeteEnterpriseProjectAwardByProjectId(Long projectId);
}
